import React,{Component} from 'react'
import {Row,Col} from 'antd'
import './index.less'
import Util from '../../utils/utils'
import axios from '../../axios'  //为了调用axios里面的jsonp，注意jsonp不是axios库有的
import { connect } from 'react-redux'

class Header extends Component {
    constructor(props) {
        super(props)
        this.state = {
            userName:'河畔一角'
        }
        setInterval(()=>{
            let sysTime = Util.formateDate(new Date().getTime());
            this.setState({
                sysTime
            })
        },1000)
        //调用天气api
        this.getWeatherAPIData();
    }
    getWeatherAPIData(){
        let city = '北京';
        axios.jsonp({
            url:'http://api.map.baidu.com/telematics/v3/weather?location='+encodeURIComponent(city)+'&output=json&ak=3p49MVra6urFRGOT9s8UBWr2'
        }).then((res)=>{
            if(res.status === 'success'){
                let data = res.results[0].weather_data[0];
                this.setState({
                    dayPictureUrl:data.dayPictureUrl,
                    weather:data.weather
                })
            }
        })
    }
    render(){
        //根据menuType判断头部是什么
        const menuType = this.props.menuType
        return (
            <div className="header">
                <Row className="header-top">
                    {
                        menuType?(<Col span={6} className="logo">
                            <img src="./assets/logo-ant.svg" alt=""/>
                            <span>IMOOC通用管理系统</span>
                        </Col>):null
                    }
                    <Col span={menuType?18:24}>
                        <span>欢迎，{this.state.userName}</span>
                        <a href="/logout">退出</a>
                    </Col>
                </Row>
                {
                    menuType? null : (<Row className="breadcrumb">
                        <Col span="4" className="breadcrumb-title">
                            {this.props.menuName || '首页'}
                        </Col>
                        <Col span="20" className="weather">
                            <span className="date">{this.state.sysTime}</span>
                            <span className="weather-img">
                                <img src={this.state.dayPictureUrl} alt="" />
                            </span>
                            <span className="weather-detail">
                                {this.state.weather}
                            </span>
                        </Col>
                    </Row>)
                }
                
            </div>
        )
    }
}
//获取值
const mapStateToProps = (state) => {
    return {
        menuName:state.menuName
    }
}

export default connect(mapStateToProps,null)(Header)